/**
 * 
 */
package com.xsoft.logic.service.interfaces.sys.role;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import com.xsoft.framework.util.Page;
import com.xsoft.logic.model.sys.Module;
import com.xsoft.logic.model.sys.ModuleRef;
import com.xsoft.logic.model.sys.Role;
import com.xsoft.logic.model.sys.User;
import com.xsoft.logic.model.sys.UserRoleFlag;
import com.xsoft.logic.model.sys.UserRolePrivilege;
import com.xsoft.logic.service.interfaces.BaseLogicService;


/**
 * @author 潘冬
 * 2010-7-28 下午03:15:44
 */
public interface RoleService extends BaseLogicService{
	/**
	 * 设置角色权限
	 * @author 潘冬
	 * 2010-7-28 下午03:20:39
	 * @param roleId	角色ID
	 * @param functions	功能点ID
	 * @return
	 */
	public boolean setRoleFunction(Long roleId,ModuleRef...functions);
	
	/**
	 * 查看角色权限
	 * @author 潘冬
	 * 2010-7-28 下午03:27:22
	 * @param userId
	 * @return
	 */
	public List<ModuleRef> viewRoleLimits(Long userId);
	
	public List<Module> selectAllModule();
	
	public void updateUserRole(Long userId,String roleIds);
	
	public void updatePrivilege(Long Id,String type,String menuIds);
	
	public List<UserRolePrivilege> getUserRolePrivilege(HashMap map);
	
	public void deleteRolePrivilege(Long roleId);
	

}
